Recently, computer simulation is utilized in various fields. Due to the increase in the scale and computation speed of the computer simulation, the amount of data to be processed by the computer simulation is increasing with improvements in the processing capacity of the computers. Particularly in the field of HPC (High Performance Computing), there is a considerable increase in the amount of data to be processed. Recent simulations utilize a large number of polygons in order to represent an atomic structure in the case of a nano-device simulation, a shape of an organ in the case of a biomedical or biomechanical simulation. In addition, discrete data visualized in the simulation may include scalar values of stress, vorticity and the like in space, vector values of velocity, principal stress and the like, space data of tensor values output by shear stress or MRI (Magnetic Resonance Imaging), and the like. In general, such discrete data are displayed by abstraction in the form of three-dimensional shapes, and an extremely large number of three-dimensional shapes are generated in space.
Due to the considerably large amount of data output by the recent simulations, the data unit may be on the order of terabytes (TB) to petabytes (PB), which in turn considerably increases the number of polygons to be displayed and considerably increases the time it takes for the visualization process to be performed.
Color mapping may be made on the three-dimensional shape, in order to provide a clearer representation of the three-dimensional shape. A user may decide parameters (or physical values) to which the color mapping is to be made. The physical values may related to stress, velocity, temperature, and the like. A color map defines the mapping of the physical values and the colors.
The development of visualization techniques and systems that may cope with the large-scale data is in progress. However, one of the most troublesome and time-consuming operations to be performed by the user during the visualization process is the setting of the color map described above. The visualization process replaces the physical value distribution designated by the user by colors according to the color map, on the polygons, and performs a computer graphics process in order to facilitate observation (or monitoring) of a phenomenon of the simulation target. In order to set the color map according to the data that change with time or according to micro-phenomenon to be observed, a troublesome and time-consuming process may be required to repeatedly set a suitable color map while observing the physical value distribution of the observation target.
FIGS. 1A, 1B, and 1C are diagrams for explaining a color map adjustment with respect to a partially enlarged image. FIG. 1A illustrates the entire image. The user designates a visualization range with respect to the entire image, by a white rectangular frame illustrated in FIG. 1A. The visualization range may be designated by a pointing device such as a mouse, a tablet, and the like. Alternatively, the visualization range may be designated by use of a simulation camera, by determining a camera position, a lens focal distance, a lens direction, and the like.
FIG. 1B illustrates an image that is obtained by rendering the visualization range using the color map applied to the entire image illustrated in FIG. 1A. In this example, approximately 80% of the screen is formed by an image having a color tone close to black. It may be seen from FIG. 1B that the rendering of the visualization range designated by the user is not appropriate.
On the other hand, FIG. 1C illustrates an example of the image that is obtained by manually adjusting the color map. The color map is appropriately adjusted by the user and set in order to enable satisfactory observation of the phenomenon in the visualization range. A black-and-white image is illustrated in FIG. 1C, however, the actual image is in color and is easily recognizable by the user due to the color mapping. The manual adjustment of the color map by the user includes setting the color map, rendering the visualization range, and repeating the setting and rendering in order to more clearly visualize the phenomenon in the visualization range by the rendering. In other words, the setting and rendering are repeated several times in a trial-and-error manner. Consequently, the color map adjustment may take time to perform.
FIG. 2 is a flow chart for explaining an example of the visualization process. In FIG. 2, a step 110 inputs numerical data to a processing unit (or computer) by a data input process. A step 120 performs a filtering process on the numerical data, when required as a pre-process. The filtering process may include a process to select a target data range. In this state, target physical values of the color display are selected. Next, a step 130 generates shapes, that is, polygons, by a visualization technique. A step 135 replaces the physical values of the visualization target (shape or polygon) into colors according to the color map. A step 140 inputs the shapes and colors, and performs a graphics process, such as a rendering process, on the input shapes and colors.
In order to reset the color map, the process needs to return to the filtering process of the step 120. Further, after the process of the step 130, the data integrally includes the color data and the shape data, and the color map adjustment of FIG. 1C is not possible after the step 130. For this reason, the process needs to return to the data input process of the step 110 in order to reexecute the data input process, and the color map adjustment after the step 130 may take time to perform.
In an example of a known visualization apparatus that visualizes the numerical data of a numerical simulation result, a luminance computing unit may obtain the numerical data with respect to each pixel by interpolating the numerical data supplied from a numerical data storage unit. A color corresponding to the numerical data may be obtained from a table storing a correspondence of the data values and the colors. The luminance of the pixel may be computed by combining the color obtained from the table and the intensity of light irradiated on a position where the pixel is to be displayed.
On the other hand, in an example of a known simulation system to display a response of a framed structure, arbitrary points may be designated by a time sequential point designating unit, such as a mouse. Each node of the designated time sequential points and a physical quantity level of each element or each surface element may be displayed in colors according to each node corresponding to the framed structure displayed on a display unit and the physical quantity level of each element or each surface element of the framed structure.
In addition, in an example of a known visualization process, a state of an analyzing target may be computed, and pixel data indicating the state of the analyzing target as an image may be generated from the computation result on the analyzing target, based on preset parameters for visualization. Z-buffer values, or depth data of the pixel data from a predetermined viewpoint may also be generated. The pixel data and the Z-buffer values may be combined to generate pixel data of one frame that is displayed.
Examples of prior art may include a Japanese Patent No. 3047339 (or Japanese Laid-Open Patent Publication No. 6-231277), a Japanese Laid-Open Patent Application Publication No. 8-129579, and a Japanese Laid-Open Patent Publication No. 9-293146.